Data Access Reorganizations in Compiling Out-of-Core Data Parallel Programs on Distributed Memory Machines
نویسندگان
چکیده
This paper describes optimization techniques for translating out-of-core programs written in a data parallel language like HPF to message passing node programs with explicit parallel I/O. We rst discuss how an out-of-core program can be translated by extending the method used for translating in-core programs. We demonstrate that straightforward extension of in-core compilation techniques does not work well for outof-core programs. We then describe how the compiler can optimize the code by (1) determining appropriate le layouts for out-of-core arrays, (2) permuting the loops in the nest(s) to allow e cient le reading/writing, and (3) partitioning the available incore node memory among references based on I/O cost estimation. Both our analytical approach and experimental results indicate that these optimizations can reduce the amount of time spent in I/O by as much as an order of magnitude. Performance results on IBM SP-2 are presented and discussed.
منابع مشابه
Compilation Techniques for Out-of-Core Parallel Computations
The difficulty of handling out-of-core data limits the performance of supercomputers as well as the potential of the parallel machines. Since writing an efficient out-of-core version of a program is a difficult task and virtual memory systems do not perform well on scientific computations, we believe that there is a clear need for compiler directed explicit I/O approach for out-of-core computat...
متن کاملEecient Compilation of Out-of-core Data Parallel Programs Eecient Compilation of Out-of-core Data Parallel Programs
Large scale scientiic applications, such as the Grand Challenge applications, deal with very large quantities of data. The amount of main memory in distributed memory machines is usually not large enough to solve problems of realistic size. This limitation results in the need for system and application software support to provide eecient parallel I/O for out-of-core programs. This paper describ...
متن کاملImproving the Performance of Out-of-Core Computations
The difficulty of handling out-of-core data limits the potential of parallel machines and high-end supercomputers. Since writing an efficient out-of-core version of a program is a difficult task and since virtual memory systems do not perform well on scientific computations, we believe that there is a clear need for compilerdirected explicit I/O approach for out-of-core computations. In this pa...
متن کاملCompiling High Performance Fortran to Message Passing
ADAPTOR is a public domain High Performance Fortran compilation system that provides the comfortable data parallel programming paradigm on parallel machines with distributed memory. Therefore, the data parallel programs with their global view of data are translated to programs that work on the local parts of the distributed data and exchange the other needed data via message passing. This paper...
متن کاملCompilation and Communication Strategies for Out-of-Core Programs on Distributed Memory Machines
It is widely acknowledged that improving parallel I/O performance is critical for widespread adoption of high performance computing. In this paper, we show that communication in out-of-core distributed memory problems may require both inter-processor communication and le I/O. Thus, in order to improve I/O performance, it is necessary to minimize the I/O costs associated with a communication ste...
متن کامل